home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * (a) (C) 1990 by Adobe Systems Incorporated. All rights reserved.
- *
- * (b) If this Sample Code is distributed as part of the Display PostScript
- * System Software Development Kit from Adobe Systems Incorporated,
- * then this copy is designated as Development Software and its use is
- * subject to the terms of the License Agreement attached to such Kit.
- *
- * (c) If this Sample Code is distributed independently, then the following
- * terms apply:
- *
- * (d) This file may be freely copied and redistributed as long as:
- * 1) Parts (a), (d), (e) and (f) continue to be included in the file,
- * 2) If the file has been modified in any way, a notice of such
- * modification is conspicuously indicated.
- *
- * (e) PostScript, Display PostScript, and Adobe are registered trademarks of
- * Adobe Systems Incorporated.
- *
- * (f) THE INFORMATION BELOW IS FURNISHED AS IS, IS SUBJECT TO
- * CHANGE WITHOUT NOTICE, AND SHOULD NOT BE CONSTRUED
- * AS A COMMITMENT BY ADOBE SYSTEMS INCORPORATED.
- * ADOBE SYSTEMS INCORPORATED ASSUMES NO RESPONSIBILITY
- * OR LIABILITY FOR ANY ERRORS OR INACCURACIES, MAKES NO
- * WARRANTY OF ANY KIND (EXPRESS, IMPLIED OR STATUTORY)
- * WITH RESPECT TO THIS INFORMATION, AND EXPRESSLY
- * DISCLAIMS ANY AND ALL WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR PARTICULAR PURPOSES AND NONINFRINGEMENT
- * OF THIRD PARTY RIGHTS.
- */
-
- /*
- * Graphic.h
- *
- * Version: 2.0
- * Author: Ken Fromm
- * History:
- * 03-07-91 Added this comment.
- */
-
- #import "FormatApp.h"
- #import "DrawingView.h"
- #import <objc/Object.h>
- #import <appkit/graphics.h>
-
- #define FILL 0
- #define STROKE 1
- #define CLIP 2
-
- #define GRAY 0
- #define RGB 1
- #define HSB 2
- #define CMYK 3
-
- typedef struct _GParms {
- unsigned char path_type;
- unsigned char color_type;
- float gray;
- float red;
- float green;
- float blue;
- float linewidth;
- float miterlimit;
- unsigned char linejoin;
- unsigned char linecap;
- } GParms;
-
- @interface Graphic : Object
- {
- NXRect bounds; /* the bounds */
-
- GParms parms; /* the graphic state parameters for the object */
-
- UPath path; /* the path */
- }
-
- /* Factory methods */
- + new;
- - free;
-
- - installGparms:(const GParms *) gParms;
- - installUpath:(const UPath *) aUpath andBounds:(const NXRect *) aRect;
- - getBounds:(NXRect *)theRect;
-
- - setPathType:(int) value;
- - (int)pathType;
-
- - setLineWidth:(float) value;
- - (float)lineWidth;
- - setLineJoin:(int) value;
- - (int)lineJoin;
- - setLineCap:(int) value;
- - (int)lineCap;
- - setMiterLimit:(float) value;
- - (float)miterLimit;
-
- - (int) colorType;
- - setGray:(float)value;
- - (float)gray;
- - setRGBColor:(int)r : (int)g :(int)b;
- - getRGBColor:(int *)r : (int *)g :(int *)b;
- - setHGBColor:(int)h :(int)s :(int)b;
- - getHGBColor:(int *)h :(int *)s :(int *)b;
- - setCMYKColor:(int)c : (int)m :(int)y :(int)k;
- - getCMYKColor:(int *)c : (int *)m :(int *)y :(int *)k;
-
- - drawObject:(NXRect *) r currentParms:(GParms *) gParms withFormat:(int) format;
-
- @end
-
-